package com.campus.shop.utils;

import org.apache.commons.codec.digest.DigestUtils;

public class ToolUtils {
    private static final String salt = "1a2b3c4d";

    //获取随机字符串
    public static String getRandomStr(int length) {
        char[] mapTable = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
                'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
                'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8',
                '9'};
        // 取随机产生的随机码
        String strEnsure = "";
        // length代表length位随机码
        for (int i = 0; i < length; ++i) {
            strEnsure += mapTable[(int) (mapTable.length * Math.random())];
        }
        return strEnsure;
    }

    //获取随机数字
    public static String getRandomNumber(int j) {
        char[] mapTable = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};
        // 取随机产生的随机码
        String strEnsure = "";
        // j代表j位随机码
        for (int i = 0; i < j; ++i) {
            strEnsure += mapTable[(int) (mapTable.length * Math.random())];
        }
        return strEnsure;
    }

    //md5加密
    public static String md5(String inputStr) {
        //md5加密密码前，先对密码进行处理，按以下salt的规则处理密码
        String str = "" + salt.charAt(0) + salt.charAt(2) + inputStr + salt.charAt(5) + salt.charAt(4);
        return encryption(str);
    }

    public static String encryption(String src) {
        return DigestUtils.md5Hex(src);
    }

    // 随机生成用户名
    public static String getUserName() {
        return "shop_" + getRandomStr(6);
    }

    //获取路由
    public static String getBaseUrl() {
        return "http://127.0.0.1:8090";
    }

    //字符串转数组
    public static Integer[] stringToArray(String toString){
        String[] stringArray = toString.split(",");  // 将字符串按逗号分割
        Integer[] integerArray = new Integer[stringArray.length];  // 创建一个整数数组
        for (int i = 0; i < stringArray.length; i++) {
            integerArray[i] = Integer.parseInt(stringArray[i]);  // 将每个字符串元素转换为整数
        }
        return integerArray;
    }

}
